{"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"name":"CNN3.ipynb","provenance":[{"file_id":"1nbofAi2dLnhJvkcLl1Xag7I1vx4MPR2s","timestamp":1575817955063},{"file_id":"1tTQLWB1ve20LC-Cxir5CrLKQ_vDyzeI2","timestamp":1575815207334}],"collapsed_sections":[]},"kernelspec":{"name":"python3","display_name":"Python 3"},"accelerator":"GPU"},"cells":[{"cell_type":"markdown","metadata":{"id":"29QOaXmpXOn_","colab_type":"text"},"source":["# CNN3 SETTINGS\n","\n","SUBJECT'S DATA SELECTION:                                                                                                  \n","- **A**: Signal samples: 7794, EEG channels: 64, Testset letters: 100                                                           \n","- **B**: Signal samples: 7794, EEG channels: 64, Testset letters: 100 "]},{"cell_type":"code","metadata":{"id":"9nw7AE3rLWlk","colab_type":"code","outputId":"65eebd91-a8d6-4fe3-b426-69000ba873b5","executionInfo":{"status":"ok","timestamp":1576408097044,"user_tz":-60,"elapsed":24218,"user":{"displayName":"Lorenzo Gualniera","photoUrl":"https://lh3.googleusercontent.com/a-/AAuE7mCLpjQsro-Xs6X0aZX_0HuLLblFWB6HZFMeyZLy=s64","userId":"15976103540540623653"}},"colab":{"base_uri":"https://localhost:8080/","height":333}},"source":["import matplotlib.pyplot as plt\n","import seaborn as sns\n","import pandas as pd\n","import numpy as np     \n","import random           \n","from scipy.io import loadmat\n","from scipy import signal\n","from google.colab import drive\n","import warnings\n","import string\n","import os\n","\n","from keras.layers import *\n","from keras.models import Model\n","from keras import backend as K\n","from keras import Sequential\n","from keras.callbacks import ModelCheckpoint\n","from keras.callbacks import EarlyStopping\n","from sklearn.metrics import confusion_matrix\n","from sklearn.preprocessing import scale\n","\n","# Install mne library for topoplot\n","!pip install mne\n","import mne\n","\n","warnings.filterwarnings('ignore')\n","drive.mount('/content/drive')\n","\n","####################### SETTINGS ########################\n","# Set this variable with the desidered subject's letter #\n","SUBJECT_SELECTED = \"B\"                                  #\n","#########################################################\n","\n","subject_names = [\"A\", \"B\"]\n","\n","# Check for errors in the settings\n","if SUBJECT_SELECTED not in subject_names:\n","    raise ValueError(\"SUBJECT_SELECTED value {} is invalid.\\nPlease enter one of the following parameters {}\".format(SUBJECT_SELECTED, subject_names))\n","\n","# Google drive data paths\n","MODEL_LOCATIONS_FILE_PATH = 'drive/My Drive/AY1920_DT_P300_SPELLER_03/Trained_models/CNN3/' + SUBJECT_SELECTED\n","SUBJECT_TRAIN_FILE_PATH = 'drive/My Drive/AY1920_DT_P300_SPELLER_03/Dataset/Subject_' + SUBJECT_SELECTED + '_Train.mat'\n","SUBJECT_TEST_FILE_PATH = 'drive/My Drive/AY1920_DT_P300_SPELLER_03/Dataset/Subject_' + SUBJECT_SELECTED + '_Test.mat'\n","CHANNEL_LOCATIONS_FILE_PATH = 'drive/My Drive/AY1920_DT_P300_SPELLER_03/Dataset/channels.csv'\n","CHANNEL_COORD = 'drive/My Drive/AY1920_DT_P300_SPELLER_03/Dataset/coordinates.csv'\n","\n","# Channel selection\n","CHANNELS = [i for i in range(64)]"],"execution_count":0,"outputs":[{"output_type":"stream","text":["Using TensorFlow backend.\n"],"name":"stderr"},{"output_type":"display_data","data":{"text/html":["<p style=\"color: red;\">\n","The default version of TensorFlow in Colab will soon switch to TensorFlow 2.x.<br>\n","We recommend you <a href=\"https://www.tensorflow.org/guide/migrate\" target=\"_blank\">upgrade</a> now \n","or ensure your notebook will continue to use TensorFlow 1.x via the <code>%tensorflow_version 1.x</code> magic:\n","<a href=\"https://colab.research.google.com/notebooks/tensorflow_version.ipynb\" target=\"_blank\">more info</a>.</p>\n"],"text/plain":["<IPython.core.display.HTML object>"]},"metadata":{"tags":[]}},{"output_type":"stream","text":["Collecting mne\n","\u001b[?25l  Downloading https://files.pythonhosted.org/packages/a1/7c/ad1b52a3fdd4be8f55e183f1eff7d76f48cd1bee83c5630f9c26770e032e/mne-0.19.2-py3-none-any.whl (6.4MB)\n","\u001b[K     |████████████████████████████████| 6.4MB 3.2MB/s \n","\u001b[?25hRequirement already satisfied: numpy>=1.11.3 in /usr/local/lib/python3.6/dist-packages (from mne) (1.17.4)\n","Requirement already satisfied: scipy>=0.17.1 in /usr/local/lib/python3.6/dist-packages (from mne) (1.3.3)\n","Installing collected packages: mne\n","Successfully installed mne-0.19.2\n"],"name":"stdout"},{"output_type":"stream","text":["/usr/local/lib/python3.6/dist-packages/numba/decorators.py:146: RuntimeWarning: Caching is not available when the 'parallel' target is in use. Caching is now being disabled to allow execution to continue.\n","  warnings.warn(msg, RuntimeWarning)\n"],"name":"stderr"},{"output_type":"stream","text":["Go to this URL in a browser: https://accounts.google.com/o/oauth2/auth?client_id=947318989803-6bn6qk8qdgf4n4g3pfee6491hc0brc4i.apps.googleusercontent.com&redirect_uri=urn%3aietf%3awg%3aoauth%3a2.0%3aoob&response_type=code&scope=email%20https%3a%2f%2fwww.googleapis.com%2fauth%2fdocs.test%20https%3a%2f%2fwww.googleapis.com%2fauth%2fdrive%20https%3a%2f%2fwww.googleapis.com%2fauth%2fdrive.photos.readonly%20https%3a%2f%2fwww.googleapis.com%2fauth%2fpeopleapi.readonly\n","\n","Enter your authorization code:\n","··········\n","Mounted at /content/drive\n"],"name":"stdout"}]},{"cell_type":"markdown","metadata":{"id":"CVrJuHCMFCSl","colab_type":"text"},"source":["# Training set processing\n","\n","1.   Application of bandpass filter **(0.1-20Hz)**;\n","2.   Down-sampling signals from 240Hz to 120Hz;\n","3.   Obtain windows of 650ms at the start of every flashing (175ms)\n","4.   Normalization of samples in each window: **Zi = (Xi - mu) / sigma**;\n","5.   Reshape each window to be a 3D tensor with dimensions: **(N_SAMPLES, 78, 64)**;\n","6.   Obtain **(noP300 / P300)** class ratio to balance out dataset during training;"]},{"cell_type":"code","metadata":{"id":"78aU0w6-Lp0y","colab_type":"code","outputId":"162fa1dd-f901-4083-c3fe-c093785a86c3","executionInfo":{"status":"ok","timestamp":1576408100379,"user_tz":-60,"elapsed":27541,"user":{"displayName":"Lorenzo Gualniera","photoUrl":"https://lh3.googleusercontent.com/a-/AAuE7mCLpjQsro-Xs6X0aZX_0HuLLblFWB6HZFMeyZLy=s64","userId":"15976103540540623653"}},"colab":{"base_uri":"https://localhost:8080/","height":134}},"source":["if not os.path.exists(SUBJECT_TRAIN_FILE_PATH):\n","    print(\"Missing file: {}\".format(SUBJECT_TRAIN_FILE_PATH))\n","else:\n","    # Load the required data\n","    data = loadmat(SUBJECT_TRAIN_FILE_PATH)\n","    # Get the variables of interest from the loaded dictionary\n","    signals = data['Signal']\n","    flashing = data['Flashing']\n","    stimulus = data['StimulusType']\n","    word = data['TargetChar']\n","    \n","    SAMPLING_FREQUENCY = 240\n","    # From the dataset description we know that there are 15 repetitions\n","    REPETITIONS = 15\n","    # Compute the duration of the recording in minutes\n","    RECORDING_DURATION = (len(signals))*(len(signals[0]))/(SAMPLING_FREQUENCY*60)\n","    # Compute number of trials\n","    TRIALS = len(word[0])\n","    # Set flag to True to balance the training set\n","    BALANCE_DATASET = False\n","\n","    print(\"**********************************\")\n","    print(\"       TRAIN SET INFORMATION      \")\n","    print(\"**********************************\")\n","    print(\"Sampling Frequency: %d Hz [%.2f ms]\" % (SAMPLING_FREQUENCY, (1000/SAMPLING_FREQUENCY)))\n","    print(\"Session duration:   %.2f min\" % RECORDING_DURATION)\n","    print(\"Number of letters:  %d\" % TRIALS)\n","    print(\"Spelled word:       %s\" % ''.join(word))"],"execution_count":0,"outputs":[{"output_type":"stream","text":["**********************************\n","       TRAIN SET INFORMATION      \n","**********************************\n","Sampling Frequency: 240 Hz [4.17 ms]\n","Session duration:   46.01 min\n","Number of letters:  85\n","Spelled word:       VGREAAH8TVRHBYN_UGCOLO4EUERDOOHCIFOMDNU6LQCPKEIREKOYRQIDJXPBKOJDWZEUEWWFOEBHXTQTTZUMO\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"IXuVC7puKcLt","colab_type":"code","colab":{}},"source":["# Application of butterworth filter\n","b, a = signal.butter(4, [0.1/SAMPLING_FREQUENCY, 20/SAMPLING_FREQUENCY], 'bandpass')\n","for trial in range(TRIALS):\n","    signals[trial, :, :] = signal.filtfilt(b, a, signals[trial, :, :], axis=0)"],"execution_count":0,"outputs":[]},{"cell_type":"code","metadata":{"id":"jS1FuKDuixnF","colab_type":"code","outputId":"f58b09f7-dd81-4d8a-c483-ba121284254a","executionInfo":{"status":"ok","timestamp":1576408103434,"user_tz":-60,"elapsed":30569,"user":{"displayName":"Lorenzo Gualniera","photoUrl":"https://lh3.googleusercontent.com/a-/AAuE7mCLpjQsro-Xs6X0aZX_0HuLLblFWB6HZFMeyZLy=s64","userId":"15976103540540623653"}},"colab":{"base_uri":"https://localhost:8080/","height":50}},"source":["# Down-sampling of the signals from 240Hz to 120Hz\n","DOWNSAMPLING_FREQUENCY = 120\n","SCALE_FACTOR = round(SAMPLING_FREQUENCY / DOWNSAMPLING_FREQUENCY)\n","SAMPLING_FREQUENCY = DOWNSAMPLING_FREQUENCY\n","\n","print(\"# Samples of EEG signals before downsampling: {}\".format(len(signals[0])))\n","\n","signals = signals[:, 0:-1:SCALE_FACTOR, :]\n","flashing = flashing[:, 0:-1:SCALE_FACTOR]\n","stimulus = stimulus[:, 0:-1:SCALE_FACTOR]\n","\n","print(\"# Samples of EEG signals after downsampling: {}\".format(len(signals[0])))"],"execution_count":0,"outputs":[{"output_type":"stream","text":["# Samples of EEG signals before downsampling: 7794\n","# Samples of EEG signals after downsampling: 3897\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"bGaRKwu9MIvP","colab_type":"code","outputId":"8cd4d0ad-e448-4342-bb25-a3679aae77f9","executionInfo":{"status":"ok","timestamp":1576408104672,"user_tz":-60,"elapsed":31794,"user":{"displayName":"Lorenzo Gualniera","photoUrl":"https://lh3.googleusercontent.com/a-/AAuE7mCLpjQsro-Xs6X0aZX_0HuLLblFWB6HZFMeyZLy=s64","userId":"15976103540540623653"}},"colab":{"base_uri":"https://localhost:8080/","height":33}},"source":["# Number of EEG channels\n","N_CHANNELS = len(CHANNELS)\n","# Window duration after each flashing [ms]\n","WINDOW_DURATION = 650\n","# Number of samples of each window\n","WINDOW_SAMPLES = round(SAMPLING_FREQUENCY * (WINDOW_DURATION / 1000))\n","# Number of samples for each character in trials\n","SAMPLES_PER_TRIAL = len(signals[0])\n","\n","train_features = []\n","train_labels = []\n","\n","count_positive = 0\n","count_negative = 0\n","\n","for trial in range(TRIALS):\n","    for sample in (range(SAMPLES_PER_TRIAL)):\n","        if (sample == 0) or (flashing[trial, sample-1] == 0 and flashing[trial, sample] == 1):\n","            lower_sample = sample\n","            upper_sample = sample + WINDOW_SAMPLES\n","            window = signals[trial, lower_sample:upper_sample, :]                \n","            # Features extraction\n","            train_features.append(window)\n","            # Labels extraction\n","            if stimulus[trial, sample] == 1:\n","                count_positive += 1\n","                train_labels.append(1) # Class P300\n","            else:\n","                count_negative += 1\n","                train_labels.append(0) # Class no-P300\n","\n","# Get negative-positive classes ratio\n","train_ratio = count_negative/count_positive\n","\n","# Convert lists to numpy arrays\n","train_features = np.array(train_features)\n","train_labels = np.array(train_labels)\n","\n","# 3D Tensor shape (SAMPLES, 64, 78)\n","dim_train = train_features.shape\n","print(\"Features tensor shape: {}\".format(dim_train))"],"execution_count":0,"outputs":[{"output_type":"stream","text":["Features tensor shape: (15300, 78, 64)\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"kKMlV1Mqapew","colab_type":"code","colab":{}},"source":["# Data normalization Zi = (Xi - mu) / sigma\n","for pattern in range(len(train_features)):\n","    train_features[pattern] = scale(train_features[pattern], axis=0)"],"execution_count":0,"outputs":[]},{"cell_type":"markdown","metadata":{"id":"xTVrfKzJH2aE","colab_type":"text"},"source":["# Testing set processing\n","\n","1.   Application of bandpass filter **(0.1-20Hz)**;\n","2.   Down-sampling signas from 240Hz to 120Hz;\n","3.   Obtain windows of 650ms at the start of every flashing (175ms)\n","4.   Normalization of samples in each window: **Zi = (Xi - mu) / sigma**;\n","5.   Reshape each window to be a 3D tensor with dimensions: **(N_SAMPLES, 78, 64)**;\n","6.   Calculate weights vector to balance samples importance and obtain correct accuracy estimation;"]},{"cell_type":"code","metadata":{"id":"Nm-bZZsKTliz","colab_type":"code","outputId":"29f9c5ff-081a-4eb1-ac69-0b929b0c9395","executionInfo":{"status":"ok","timestamp":1576408114853,"user_tz":-60,"elapsed":41950,"user":{"displayName":"Lorenzo Gualniera","photoUrl":"https://lh3.googleusercontent.com/a-/AAuE7mCLpjQsro-Xs6X0aZX_0HuLLblFWB6HZFMeyZLy=s64","userId":"15976103540540623653"}},"colab":{"base_uri":"https://localhost:8080/","height":134}},"source":["# Test data loading\n","if not os.path.exists(SUBJECT_TEST_FILE_PATH):\n","    print(\"Missing file: {}\", SUBJECT_TEST_FILE_PATH)\n","else:\n","    # Load the required data\n","    data_test = loadmat(SUBJECT_TEST_FILE_PATH)\n","    # Get the variables of interest from the loaded dictionary\n","    signals_test = data_test['Signal']\n","    flashing_test = data_test['Flashing']\n","    word_test =  data_test['TargetChar']\n","    stimulus_code_test = data_test['StimulusCode']\n","\n","    SAMPLING_FREQUENCY = 240\n","    # From the dataset description we know that there are 15 repetitions\n","    REPETITIONS = 15\n","    # Compute the duration of the recording in minutes\n","    RECORDING_DURATION_TEST = (len(signals_test))*(len(signals_test[0]))/(SAMPLING_FREQUENCY*60)\n","    # Compute number of trials\n","    TRIALS_TEST = len(word_test[0])\n","    # Number of samples for each character in trials\n","    SAMPLES_PER_TRIAL_TEST = len(signals_test[0])\n","    \n","    print(\"**********************************\")\n","    print(\"        TEST SET INFORMATION      \")\n","    print(\"**********************************\")\n","    print(\"Sampling Frequency: %d Hz [%.2f ms]\" % (SAMPLING_FREQUENCY, (1000/SAMPLING_FREQUENCY)))\n","    print(\"Session duration:   %.2f min\" % RECORDING_DURATION_TEST)\n","    print(\"Number of letters:  %d\" % TRIALS_TEST)\n","    print(\"Spelled word:       %s\" % ''.join(word_test))"],"execution_count":0,"outputs":[{"output_type":"stream","text":["**********************************\n","        TEST SET INFORMATION      \n","**********************************\n","Sampling Frequency: 240 Hz [4.17 ms]\n","Session duration:   54.12 min\n","Number of letters:  100\n","Spelled word:       MERMIROOMUHJPXJOHUVLEORZP3GLOO7AUFDKEFTWEOOALZOP9ROCGZET1Y19EWX65QUYU7NAK_4YCJDVDNGQXODBEV2B5EFDIDNR\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"SvCresQJm25A","colab_type":"code","colab":{}},"source":["# Create characters matrix\n","char_matrix = [[0 for j in range(6)] for i in range(6)]\n","s = string.ascii_uppercase + '1' + '2' + '3' + '4' + '5' + '6' + '7' + '8' + '9' + '_'\n","\n","# Append cols and rows in a list\n","list_matrix = []\n","for i in range(6):\n","    col = [s[j] for j in range(i, 36, 6)]\n","    list_matrix.append(col)\n","for i in range(6):\n","    row = [s[j] for j in range(i * 6, i * 6 + 6)]\n","    list_matrix.append(row)\n","\n","# Create StimulusType array for the test set (missing from the given database)\n","stimulus_test = [[0 for j in range(SAMPLES_PER_TRIAL_TEST)] for i in range(TRIALS_TEST)]\n","stimulus_test = np.array(stimulus_test)\n","\n","for trial in range(TRIALS_TEST):\n","    counter=0\n","    for sample in range(SAMPLES_PER_TRIAL_TEST):\n","        index = int(stimulus_code_test[trial, sample]) - 1\n","        if not index == -1:\n","            if word_test[0][trial] in list_matrix[index]:\n","                stimulus_test[trial, sample] = 1\n","            else:\n","                stimulus_test[trial, sample] = 0"],"execution_count":0,"outputs":[]},{"cell_type":"code","metadata":{"id":"UNy5oI8ooMAw","colab_type":"code","colab":{}},"source":["# Application of butterworth filter\n","b, a = signal.butter(4, [0.1/SAMPLING_FREQUENCY, 20/SAMPLING_FREQUENCY], 'bandpass')\n","for trial in range(TRIALS_TEST):\n","    signals_test[trial, :, :] = signal.filtfilt(b, a, signals_test[trial, :, :], axis=0)"],"execution_count":0,"outputs":[]},{"cell_type":"code","metadata":{"id":"8CpKeth5qOjr","colab_type":"code","outputId":"aabcbb9e-2401-4f3c-aa38-1d08df7aee59","executionInfo":{"status":"ok","timestamp":1576408118591,"user_tz":-60,"elapsed":45656,"user":{"displayName":"Lorenzo Gualniera","photoUrl":"https://lh3.googleusercontent.com/a-/AAuE7mCLpjQsro-Xs6X0aZX_0HuLLblFWB6HZFMeyZLy=s64","userId":"15976103540540623653"}},"colab":{"base_uri":"https://localhost:8080/","height":50}},"source":["# Down-sampling of the signals from 240Hz to 120Hz\n","DOWNSAMPLING_FREQUENCY = 120\n","SCALE_FACTOR = round(SAMPLING_FREQUENCY / DOWNSAMPLING_FREQUENCY)\n","SAMPLING_FREQUENCY = DOWNSAMPLING_FREQUENCY\n","\n","print(\"# Samples of EEG signals before downsampling: {}\".format(len(signals_test[0])))\n","\n","signals_test = signals_test[:, 0:-1:SCALE_FACTOR, :]\n","flashing_test = flashing_test[:, 0:-1:SCALE_FACTOR]\n","stimulus_test = stimulus_test[:, 0:-1:SCALE_FACTOR]\n","\n","print(\"# Samples of EEG signals after downsampling: {}\".format(len(signals_test[0])))"],"execution_count":0,"outputs":[{"output_type":"stream","text":["# Samples of EEG signals before downsampling: 7794\n","# Samples of EEG signals after downsampling: 3897\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"48sta55OVXFy","colab_type":"code","outputId":"53e98ed0-66c0-4566-b471-e48f8738cc01","executionInfo":{"status":"ok","timestamp":1576408119997,"user_tz":-60,"elapsed":47051,"user":{"displayName":"Lorenzo Gualniera","photoUrl":"https://lh3.googleusercontent.com/a-/AAuE7mCLpjQsro-Xs6X0aZX_0HuLLblFWB6HZFMeyZLy=s64","userId":"15976103540540623653"}},"colab":{"base_uri":"https://localhost:8080/","height":33}},"source":["# Number of EEG channels\n","N_CHANNELS = len(CHANNELS)\n","# Window duration after each flashing [ms]\n","WINDOW_DURATION = 650\n","# Number of samples of each window\n","WINDOW_SAMPLES = round(SAMPLING_FREQUENCY * (WINDOW_DURATION / 1000))\n","# Number of samples for each character in trials\n","SAMPLES_PER_TRIAL_TEST = len(signals[0])\n","\n","test_features = []\n","test_labels = []\n","windowed_stimulus = []\n","\n","count_positive = 0\n","count_negative = 0\n","\n","for trial in range(TRIALS_TEST):\n","    for sample in (range(SAMPLES_PER_TRIAL_TEST)):\n","        if (sample == 0) or (flashing_test[trial, sample-1] == 0 and flashing_test[trial, sample] == 1):\n","            lower_sample = sample\n","            upper_sample = sample + WINDOW_SAMPLES\n","            window = signals_test[trial, lower_sample:upper_sample, :]\n","            # Extracting number of row/col in a window\n","            number_stimulus = int(stimulus_code_test[trial, sample])\n","            windowed_stimulus.append(number_stimulus)\n","            # Features extraction\n","            test_features.append(window)\n","            # Labels extraction\n","            if stimulus_test[trial, sample] == 1:\n","                count_positive += 1\n","                test_labels.append(1) # Class P300\n","            else:\n","                count_negative += 1\n","                test_labels.append(0) # Class no-P300\n","\n","# Get test weights to take into account the number of classes \n","test_weights = []\n","for i in range(len(test_labels)):\n","    if test_labels[i] == 1:\n","        test_weights.append(len(test_labels)/count_positive)\n","    else:\n","        test_weights.append(len(test_labels)/count_negative)\n","test_weights = np.array(test_weights)\n","\n","# Convert lists to numpy arrays\n","test_features = np.array(test_features)\n","test_labels = np.array(test_labels)\n","\n","# 3D tensor (SAMPLES, 64, 78)\n","dim_test = test_features.shape\n","print(\"Features tensor shape: {}\".format(dim_test))"],"execution_count":0,"outputs":[{"output_type":"stream","text":["Features tensor shape: (18000, 78, 64)\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"-VY8Nr04YI9F","colab_type":"code","colab":{}},"source":["# Data normalization Zi = (Xi - mu) / sigma\n","for pattern in range(len(test_features)):\n","    test_features[pattern] = scale(test_features[pattern], axis=0)"],"execution_count":0,"outputs":[]},{"cell_type":"markdown","metadata":{"id":"-VK4MFXTjHoM","colab_type":"text"},"source":["# CNN3 model definition, training and testing\n","\n","1.   Function definiton for randomization of weights and biases;\n","2.   **Scaled_tanh(x)** activation function definition;\n","3.   ANN model definition (2 Conv1D layers, 2 dense layers);\n","4.   Training of the network over weighted dataset;\n","5.   CNN3 performance assessment;"]},{"cell_type":"code","metadata":{"id":"eTIc_w_TcOmK","colab_type":"code","colab":{}},"source":["# Randomizing function for bias and weights of the network\n","def cecotti_normal(shape, dtype = None, partition_info = None):\n","    if len(shape) == 1:\n","        fan_in = shape[0]\n","    elif len(shape) == 2:\n","        fan_in = shape[0]\n","    else:\n","        receptive_field_size = 1\n","        for dim in shape[:-2]:\n","            receptive_field_size *= dim\n","        fan_in = shape[-2] * receptive_field_size\n","    return K.random_normal(shape, mean = 0.0, stddev = (1.0 / fan_in))"],"execution_count":0,"outputs":[]},{"cell_type":"code","metadata":{"id":"VeyyvqGgcTsa","colab_type":"code","colab":{}},"source":["# Custom tanh activation function\n","def scaled_tanh(z):\n","    return 1.7159 * K.tanh((2.0 / 3.0) * z)"],"execution_count":0,"outputs":[]},{"cell_type":"code","metadata":{"id":"BuMCOgJ3ST-h","colab_type":"code","colab":{}},"source":["# Build the model\n","def CNN3_model(channels=64, filters=1):\n","    model = Sequential([\n","        Conv1D(\n","            filters = filters,\n","            kernel_size = 1,\n","            padding = \"same\",\n","            bias_initializer = cecotti_normal,\n","            kernel_initializer = cecotti_normal,\n","            use_bias = True,\n","            activation = scaled_tanh,\n","            input_shape = (78, channels)\n","        ),\n","        Conv1D(\n","            filters = 50,\n","            kernel_size = 13,\n","            padding = \"valid\",\n","            strides = 11,\n","            bias_initializer = cecotti_normal,\n","            kernel_initializer = cecotti_normal,\n","            use_bias = True,\n","            activation = scaled_tanh,\n","        ),\n","        Flatten(),\n","        Dense(100, activation=\"sigmoid\"),\n","        Dense(1, activation=\"sigmoid\")\n","    ])\n","    model.compile(optimizer = 'adam', loss = 'mean_squared_error', metrics = ['accuracy'])\n","    return model"],"execution_count":0,"outputs":[]},{"cell_type":"code","metadata":{"id":"jVMdFs4quaZL","colab_type":"code","outputId":"426e9955-1438-44a2-aa21-b715d6699de4","executionInfo":{"status":"ok","timestamp":1576408127526,"user_tz":-60,"elapsed":54522,"user":{"displayName":"Lorenzo Gualniera","photoUrl":"https://lh3.googleusercontent.com/a-/AAuE7mCLpjQsro-Xs6X0aZX_0HuLLblFWB6HZFMeyZLy=s64","userId":"15976103540540623653"}},"colab":{"base_uri":"https://localhost:8080/","height":505}},"source":["# Training parameters\n","BATCH_SIZE = 256\n","EPOCHS = 200\n","VALID_SPLIT = 0.05\n","SHUFFLE = 1 # set to 1 to shuffle subsets during training\n","\n","# Model summary\n","CNN3_model(channels=64, filters=1).summary()"],"execution_count":0,"outputs":[{"output_type":"stream","text":["WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:66: The name tf.get_default_graph is deprecated. Please use tf.compat.v1.get_default_graph instead.\n","\n","WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:541: The name tf.placeholder is deprecated. Please use tf.compat.v1.placeholder instead.\n","\n","WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:4409: The name tf.random_normal is deprecated. Please use tf.random.normal instead.\n","\n","WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:4432: The name tf.random_uniform is deprecated. Please use tf.random.uniform instead.\n","\n","WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/optimizers.py:793: The name tf.train.Optimizer is deprecated. Please use tf.compat.v1.train.Optimizer instead.\n","\n","Model: \"sequential_1\"\n","_________________________________________________________________\n","Layer (type)                 Output Shape              Param #   \n","=================================================================\n","conv1d_1 (Conv1D)            (None, 78, 1)             65        \n","_________________________________________________________________\n","conv1d_2 (Conv1D)            (None, 6, 50)             700       \n","_________________________________________________________________\n","flatten_1 (Flatten)          (None, 300)               0         \n","_________________________________________________________________\n","dense_1 (Dense)              (None, 100)               30100     \n","_________________________________________________________________\n","dense_2 (Dense)              (None, 1)                 101       \n","=================================================================\n","Total params: 30,966\n","Trainable params: 30,966\n","Non-trainable params: 0\n","_________________________________________________________________\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"GEPpgyxyTl-u","colab_type":"code","outputId":"928e6629-3b10-4810-cdf2-db275d280ea6","executionInfo":{"status":"ok","timestamp":1576408180266,"user_tz":-60,"elapsed":107252,"user":{"displayName":"Lorenzo Gualniera","photoUrl":"https://lh3.googleusercontent.com/a-/AAuE7mCLpjQsro-Xs6X0aZX_0HuLLblFWB6HZFMeyZLy=s64","userId":"15976103540540623653"}},"colab":{"base_uri":"https://localhost:8080/","height":1000}},"source":["# Model definition\n","model = CNN3_model(channels=64, filters=1)\n","\n","# Callback to save best model only\n","checkpoint = ModelCheckpoint(filepath=MODEL_LOCATIONS_FILE_PATH + \"/\" + \"model\" + \".h5\", \n","                             monitor='val_loss', \n","                             mode='min',\n","                             save_best_only=True)\n","\n","# Callback to stop when loss on validation set doesn't decrease in 50 epochs\n","earlystop = EarlyStopping(monitor = 'val_loss', \n","                          mode = 'min', \n","                          patience = 50, \n","                          restore_best_weights = True)\n","\n","# Callback to keep track of model statistics\n","history = model.fit(x=train_features, \n","                    y=train_labels, \n","                    batch_size=BATCH_SIZE, \n","                    epochs=EPOCHS, \n","                    validation_split=VALID_SPLIT, \n","                    callbacks=[checkpoint, earlystop],\n","                    shuffle=SHUFFLE,\n","                    class_weight={0: 1., 1: train_ratio})"],"execution_count":0,"outputs":[{"output_type":"stream","text":["WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:1033: The name tf.assign_add is deprecated. Please use tf.compat.v1.assign_add instead.\n","\n","WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:1020: The name tf.assign is deprecated. Please use tf.compat.v1.assign instead.\n","\n","WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:3005: The name tf.Session is deprecated. Please use tf.compat.v1.Session instead.\n","\n","Train on 14535 samples, validate on 765 samples\n","Epoch 1/200\n","WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:190: The name tf.get_default_session is deprecated. Please use tf.compat.v1.get_default_session instead.\n","\n","WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:197: The name tf.ConfigProto is deprecated. Please use tf.compat.v1.ConfigProto instead.\n","\n","WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:207: The name tf.global_variables is deprecated. Please use tf.compat.v1.global_variables instead.\n","\n","WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:216: The name tf.is_variable_initialized is deprecated. Please use tf.compat.v1.is_variable_initialized instead.\n","\n","WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:223: The name tf.variables_initializer is deprecated. Please use tf.compat.v1.variables_initializer instead.\n","\n","14535/14535 [==============================] - 8s 524us/step - loss: 0.4064 - acc: 0.5227 - val_loss: 0.3754 - val_acc: 0.6654\n","Epoch 2/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.3602 - acc: 0.6716 - val_loss: 0.3253 - val_acc: 0.7098\n","Epoch 3/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.3271 - acc: 0.7108 - val_loss: 0.3108 - val_acc: 0.7699\n","Epoch 4/200\n","14535/14535 [==============================] - 0s 23us/step - loss: 0.3187 - acc: 0.7195 - val_loss: 0.2997 - val_acc: 0.7111\n","Epoch 5/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.3102 - acc: 0.7352 - val_loss: 0.2952 - val_acc: 0.6928\n","Epoch 6/200\n","14535/14535 [==============================] - 0s 27us/step - loss: 0.3095 - acc: 0.7280 - val_loss: 0.2866 - val_acc: 0.7595\n","Epoch 7/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.3068 - acc: 0.7421 - val_loss: 0.2900 - val_acc: 0.7346\n","Epoch 8/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.3088 - acc: 0.7309 - val_loss: 0.2866 - val_acc: 0.7307\n","Epoch 9/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.3047 - acc: 0.7375 - val_loss: 0.2879 - val_acc: 0.7556\n","Epoch 10/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.3056 - acc: 0.7370 - val_loss: 0.2837 - val_acc: 0.7451\n","Epoch 11/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.3047 - acc: 0.7428 - val_loss: 0.2871 - val_acc: 0.6980\n","Epoch 12/200\n","14535/14535 [==============================] - 0s 26us/step - loss: 0.3075 - acc: 0.7298 - val_loss: 0.2789 - val_acc: 0.7817\n","Epoch 13/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.3057 - acc: 0.7399 - val_loss: 0.2805 - val_acc: 0.7490\n","Epoch 14/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.3067 - acc: 0.7302 - val_loss: 0.2776 - val_acc: 0.7712\n","Epoch 15/200\n","14535/14535 [==============================] - 0s 23us/step - loss: 0.3043 - acc: 0.7428 - val_loss: 0.2786 - val_acc: 0.7647\n","Epoch 16/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.3019 - acc: 0.7391 - val_loss: 0.2924 - val_acc: 0.7451\n","Epoch 17/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.3029 - acc: 0.7377 - val_loss: 0.2767 - val_acc: 0.7542\n","Epoch 18/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.3038 - acc: 0.7381 - val_loss: 0.2774 - val_acc: 0.7490\n","Epoch 19/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.3016 - acc: 0.7426 - val_loss: 0.2835 - val_acc: 0.7739\n","Epoch 20/200\n","14535/14535 [==============================] - 0s 23us/step - loss: 0.3043 - acc: 0.7371 - val_loss: 0.2758 - val_acc: 0.7778\n","Epoch 21/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.3015 - acc: 0.7393 - val_loss: 0.2838 - val_acc: 0.7529\n","Epoch 22/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.3026 - acc: 0.7406 - val_loss: 0.2869 - val_acc: 0.7294\n","Epoch 23/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.3026 - acc: 0.7415 - val_loss: 0.2808 - val_acc: 0.7516\n","Epoch 24/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.3036 - acc: 0.7378 - val_loss: 0.2834 - val_acc: 0.7242\n","Epoch 25/200\n","14535/14535 [==============================] - 0s 26us/step - loss: 0.3029 - acc: 0.7375 - val_loss: 0.2827 - val_acc: 0.7359\n","Epoch 26/200\n","14535/14535 [==============================] - 0s 23us/step - loss: 0.3019 - acc: 0.7428 - val_loss: 0.2792 - val_acc: 0.7399\n","Epoch 27/200\n","14535/14535 [==============================] - 0s 26us/step - loss: 0.3019 - acc: 0.7375 - val_loss: 0.2777 - val_acc: 0.7412\n","Epoch 28/200\n","14535/14535 [==============================] - 0s 26us/step - loss: 0.3007 - acc: 0.7438 - val_loss: 0.2724 - val_acc: 0.7739\n","Epoch 29/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.3024 - acc: 0.7370 - val_loss: 0.2768 - val_acc: 0.7569\n","Epoch 30/200\n","14535/14535 [==============================] - 0s 26us/step - loss: 0.3007 - acc: 0.7426 - val_loss: 0.2762 - val_acc: 0.7595\n","Epoch 31/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.3006 - acc: 0.7433 - val_loss: 0.2741 - val_acc: 0.7660\n","Epoch 32/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.3002 - acc: 0.7392 - val_loss: 0.2763 - val_acc: 0.7791\n","Epoch 33/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.3023 - acc: 0.7434 - val_loss: 0.2735 - val_acc: 0.7660\n","Epoch 34/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.3012 - acc: 0.7378 - val_loss: 0.2813 - val_acc: 0.7765\n","Epoch 35/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.3013 - acc: 0.7414 - val_loss: 0.2747 - val_acc: 0.7634\n","Epoch 36/200\n","14535/14535 [==============================] - 0s 27us/step - loss: 0.3007 - acc: 0.7392 - val_loss: 0.2750 - val_acc: 0.7830\n","Epoch 37/200\n","14535/14535 [==============================] - 0s 23us/step - loss: 0.3018 - acc: 0.7400 - val_loss: 0.2769 - val_acc: 0.7660\n","Epoch 38/200\n","14535/14535 [==============================] - 0s 23us/step - loss: 0.3000 - acc: 0.7429 - val_loss: 0.2761 - val_acc: 0.7621\n","Epoch 39/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.3003 - acc: 0.7386 - val_loss: 0.2757 - val_acc: 0.7660\n","Epoch 40/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2993 - acc: 0.7445 - val_loss: 0.2773 - val_acc: 0.7333\n","Epoch 41/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2988 - acc: 0.7373 - val_loss: 0.2716 - val_acc: 0.7804\n","Epoch 42/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2977 - acc: 0.7463 - val_loss: 0.2714 - val_acc: 0.7686\n","Epoch 43/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2982 - acc: 0.7435 - val_loss: 0.2714 - val_acc: 0.7621\n","Epoch 44/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2963 - acc: 0.7501 - val_loss: 0.2732 - val_acc: 0.7529\n","Epoch 45/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2974 - acc: 0.7396 - val_loss: 0.2733 - val_acc: 0.7660\n","Epoch 46/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2962 - acc: 0.7474 - val_loss: 0.2698 - val_acc: 0.7569\n","Epoch 47/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2961 - acc: 0.7419 - val_loss: 0.2707 - val_acc: 0.7529\n","Epoch 48/200\n","14535/14535 [==============================] - 0s 26us/step - loss: 0.2967 - acc: 0.7439 - val_loss: 0.2692 - val_acc: 0.7490\n","Epoch 49/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2968 - acc: 0.7428 - val_loss: 0.2722 - val_acc: 0.7503\n","Epoch 50/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2970 - acc: 0.7455 - val_loss: 0.2725 - val_acc: 0.7373\n","Epoch 51/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2941 - acc: 0.7430 - val_loss: 0.2682 - val_acc: 0.7673\n","Epoch 52/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2935 - acc: 0.7490 - val_loss: 0.2687 - val_acc: 0.7830\n","Epoch 53/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2945 - acc: 0.7440 - val_loss: 0.2681 - val_acc: 0.8026\n","Epoch 54/200\n","14535/14535 [==============================] - 0s 23us/step - loss: 0.2935 - acc: 0.7456 - val_loss: 0.2702 - val_acc: 0.7373\n","Epoch 55/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2924 - acc: 0.7479 - val_loss: 0.2714 - val_acc: 0.7346\n","Epoch 56/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2908 - acc: 0.7467 - val_loss: 0.2679 - val_acc: 0.7582\n","Epoch 57/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2900 - acc: 0.7542 - val_loss: 0.2687 - val_acc: 0.7516\n","Epoch 58/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2890 - acc: 0.7487 - val_loss: 0.2666 - val_acc: 0.7621\n","Epoch 59/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2883 - acc: 0.7532 - val_loss: 0.2678 - val_acc: 0.7660\n","Epoch 60/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2885 - acc: 0.7529 - val_loss: 0.2661 - val_acc: 0.7712\n","Epoch 61/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2881 - acc: 0.7497 - val_loss: 0.2712 - val_acc: 0.7477\n","Epoch 62/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2862 - acc: 0.7507 - val_loss: 0.2670 - val_acc: 0.7503\n","Epoch 63/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2849 - acc: 0.7524 - val_loss: 0.2679 - val_acc: 0.7608\n","Epoch 64/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2849 - acc: 0.7589 - val_loss: 0.2678 - val_acc: 0.7529\n","Epoch 65/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2853 - acc: 0.7533 - val_loss: 0.2658 - val_acc: 0.7778\n","Epoch 66/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2837 - acc: 0.7517 - val_loss: 0.2671 - val_acc: 0.7647\n","Epoch 67/200\n","14535/14535 [==============================] - 0s 23us/step - loss: 0.2821 - acc: 0.7562 - val_loss: 0.2655 - val_acc: 0.7791\n","Epoch 68/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2820 - acc: 0.7564 - val_loss: 0.2694 - val_acc: 0.7752\n","Epoch 69/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2815 - acc: 0.7556 - val_loss: 0.2687 - val_acc: 0.7582\n","Epoch 70/200\n","14535/14535 [==============================] - 0s 23us/step - loss: 0.2803 - acc: 0.7545 - val_loss: 0.2696 - val_acc: 0.7778\n","Epoch 71/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2830 - acc: 0.7537 - val_loss: 0.2648 - val_acc: 0.7542\n","Epoch 72/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2773 - acc: 0.7602 - val_loss: 0.2676 - val_acc: 0.7804\n","Epoch 73/200\n","14535/14535 [==============================] - 0s 26us/step - loss: 0.2787 - acc: 0.7539 - val_loss: 0.2681 - val_acc: 0.7438\n","Epoch 74/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2775 - acc: 0.7611 - val_loss: 0.2650 - val_acc: 0.7582\n","Epoch 75/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2784 - acc: 0.7572 - val_loss: 0.2693 - val_acc: 0.7438\n","Epoch 76/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2755 - acc: 0.7571 - val_loss: 0.2658 - val_acc: 0.7634\n","Epoch 77/200\n","14535/14535 [==============================] - 0s 23us/step - loss: 0.2747 - acc: 0.7623 - val_loss: 0.2649 - val_acc: 0.7739\n","Epoch 78/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2728 - acc: 0.7602 - val_loss: 0.2655 - val_acc: 0.7778\n","Epoch 79/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2732 - acc: 0.7597 - val_loss: 0.2663 - val_acc: 0.7595\n","Epoch 80/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2726 - acc: 0.7626 - val_loss: 0.2675 - val_acc: 0.7765\n","Epoch 81/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2705 - acc: 0.7644 - val_loss: 0.2655 - val_acc: 0.7739\n","Epoch 82/200\n","14535/14535 [==============================] - 0s 23us/step - loss: 0.2691 - acc: 0.7680 - val_loss: 0.2682 - val_acc: 0.7503\n","Epoch 83/200\n","14535/14535 [==============================] - 0s 23us/step - loss: 0.2714 - acc: 0.7635 - val_loss: 0.2673 - val_acc: 0.7595\n","Epoch 84/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2691 - acc: 0.7636 - val_loss: 0.2677 - val_acc: 0.7621\n","Epoch 85/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2664 - acc: 0.7684 - val_loss: 0.2677 - val_acc: 0.7673\n","Epoch 86/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2660 - acc: 0.7706 - val_loss: 0.2696 - val_acc: 0.7647\n","Epoch 87/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2648 - acc: 0.7721 - val_loss: 0.2684 - val_acc: 0.7621\n","Epoch 88/200\n","14535/14535 [==============================] - 0s 26us/step - loss: 0.2645 - acc: 0.7689 - val_loss: 0.2692 - val_acc: 0.7608\n","Epoch 89/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2637 - acc: 0.7694 - val_loss: 0.2717 - val_acc: 0.7634\n","Epoch 90/200\n","14535/14535 [==============================] - 0s 23us/step - loss: 0.2640 - acc: 0.7743 - val_loss: 0.2743 - val_acc: 0.7477\n","Epoch 91/200\n","14535/14535 [==============================] - 0s 26us/step - loss: 0.2620 - acc: 0.7702 - val_loss: 0.2710 - val_acc: 0.7752\n","Epoch 92/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2614 - acc: 0.7756 - val_loss: 0.2732 - val_acc: 0.7412\n","Epoch 93/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2589 - acc: 0.7763 - val_loss: 0.2732 - val_acc: 0.7529\n","Epoch 94/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2584 - acc: 0.7732 - val_loss: 0.2728 - val_acc: 0.7634\n","Epoch 95/200\n","14535/14535 [==============================] - 0s 26us/step - loss: 0.2567 - acc: 0.7796 - val_loss: 0.2750 - val_acc: 0.7634\n","Epoch 96/200\n","14535/14535 [==============================] - 0s 23us/step - loss: 0.2572 - acc: 0.7787 - val_loss: 0.2759 - val_acc: 0.7516\n","Epoch 97/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2545 - acc: 0.7764 - val_loss: 0.2741 - val_acc: 0.7451\n","Epoch 98/200\n","14535/14535 [==============================] - 0s 23us/step - loss: 0.2555 - acc: 0.7781 - val_loss: 0.2754 - val_acc: 0.7739\n","Epoch 99/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2518 - acc: 0.7822 - val_loss: 0.2780 - val_acc: 0.7503\n","Epoch 100/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2553 - acc: 0.7757 - val_loss: 0.2824 - val_acc: 0.7699\n","Epoch 101/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2512 - acc: 0.7801 - val_loss: 0.2807 - val_acc: 0.7712\n","Epoch 102/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2489 - acc: 0.7860 - val_loss: 0.2794 - val_acc: 0.7712\n","Epoch 103/200\n","14535/14535 [==============================] - 0s 23us/step - loss: 0.2492 - acc: 0.7871 - val_loss: 0.2813 - val_acc: 0.7503\n","Epoch 104/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2483 - acc: 0.7845 - val_loss: 0.2791 - val_acc: 0.7490\n","Epoch 105/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2478 - acc: 0.7847 - val_loss: 0.2783 - val_acc: 0.7516\n","Epoch 106/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2454 - acc: 0.7869 - val_loss: 0.2829 - val_acc: 0.7556\n","Epoch 107/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2457 - acc: 0.7891 - val_loss: 0.2827 - val_acc: 0.7438\n","Epoch 108/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2434 - acc: 0.7910 - val_loss: 0.2852 - val_acc: 0.7412\n","Epoch 109/200\n","14535/14535 [==============================] - 0s 23us/step - loss: 0.2416 - acc: 0.7941 - val_loss: 0.2856 - val_acc: 0.7386\n","Epoch 110/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2398 - acc: 0.7937 - val_loss: 0.2833 - val_acc: 0.7490\n","Epoch 111/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2398 - acc: 0.7923 - val_loss: 0.2834 - val_acc: 0.7569\n","Epoch 112/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2389 - acc: 0.7986 - val_loss: 0.2867 - val_acc: 0.7399\n","Epoch 113/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2375 - acc: 0.7936 - val_loss: 0.2872 - val_acc: 0.7634\n","Epoch 114/200\n","14535/14535 [==============================] - 0s 23us/step - loss: 0.2397 - acc: 0.7967 - val_loss: 0.2867 - val_acc: 0.7490\n","Epoch 115/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2371 - acc: 0.7977 - val_loss: 0.2885 - val_acc: 0.7595\n","Epoch 116/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2356 - acc: 0.7956 - val_loss: 0.2852 - val_acc: 0.7647\n","Epoch 117/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2343 - acc: 0.7977 - val_loss: 0.2859 - val_acc: 0.7621\n","Epoch 118/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2336 - acc: 0.8001 - val_loss: 0.2866 - val_acc: 0.7490\n","Epoch 119/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2314 - acc: 0.8026 - val_loss: 0.2879 - val_acc: 0.7503\n","Epoch 120/200\n","14535/14535 [==============================] - 0s 24us/step - loss: 0.2302 - acc: 0.8041 - val_loss: 0.2874 - val_acc: 0.7556\n","Epoch 121/200\n","14535/14535 [==============================] - 0s 25us/step - loss: 0.2291 - acc: 0.8050 - val_loss: 0.2874 - val_acc: 0.7529\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"eJHaj2f1VFYZ","colab_type":"code","outputId":"48f3820b-bdfc-4082-a255-969315eef6b5","executionInfo":{"status":"ok","timestamp":1576408180862,"user_tz":-60,"elapsed":107835,"user":{"displayName":"Lorenzo Gualniera","photoUrl":"https://lh3.googleusercontent.com/a-/AAuE7mCLpjQsro-Xs6X0aZX_0HuLLblFWB6HZFMeyZLy=s64","userId":"15976103540540623653"}},"colab":{"base_uri":"https://localhost:8080/","height":265}},"source":["plt.figure(figsize=(15,4))\n","plt.style.use('tableau-colorblind10')\n","\n","# Plots of loss curves during training\n","plt.subplot(1,2,1)\n","plt.plot(history.history['loss'], label=\"training loss\")\n","plt.plot(history.history['val_loss'], label=\"validation loss\")\n","plt.legend()\n","\n","# Plots of accuracy curves during training\n","plt.subplot(1,2,2)\n","plt.plot(history.history['acc'], label=\"training accuracy\")\n","plt.plot(history.history['val_acc'], label=\"validation accuracy\")\n","plt.legend()\n","\n","plt.show()"],"execution_count":0,"outputs":[{"output_type":"display_data","data":{"image/png":"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\n","text/plain":["<Figure size 1080x288 with 2 Axes>"]},"metadata":{"tags":[]}}]},{"cell_type":"code","metadata":{"id":"Sg1zrX0xZTRt","colab_type":"code","colab":{}},"source":["# Define model\n","best_model = CNN3_model(channels=64, filters=1)\n","\n","# Load best model weights from h5 file\n","best_model.load_weights(MODEL_LOCATIONS_FILE_PATH + \"/model.h5\")\n","\n","# Compile best model model\n","best_model.compile(optimizer = 'adam', loss = 'mean_squared_error', metrics = ['accuracy'])"],"execution_count":0,"outputs":[]},{"cell_type":"code","metadata":{"id":"jGVCt8b9qiGM","colab_type":"code","outputId":"210d2c99-af4a-4de4-8004-83d04a624415","executionInfo":{"status":"ok","timestamp":1576408226284,"user_tz":-60,"elapsed":968,"user":{"displayName":"Lorenzo Gualniera","photoUrl":"https://lh3.googleusercontent.com/a-/AAuE7mCLpjQsro-Xs6X0aZX_0HuLLblFWB6HZFMeyZLy=s64","userId":"15976103540540623653"}},"colab":{"base_uri":"https://localhost:8080/","height":309}},"source":["# Load topoplot coordinates\n","if not os.path.exists(CHANNEL_COORD):\n","    print(\"Missing file: {}\".format(CHANNEL_COORD))\n","else:\n","    xycoord = []\n","    # Read file content\n","    with open(CHANNEL_COORD, \"r\") as f:\n","        file_content = f.read()\n","        # Loop over all rows\n","        for row in file_content.split(\"\\n\"): \n","        # Skip missing rows\n","            if row == '':\n","                continue\n","            xycoord.append(row)\n","\n","# Create a list with x,y coordinates of each electrodes well formatted\n","coord = []\n","for x in xycoord:\n","    coord.append(x.split(','))\n","coord = np.array(coord)\n","\n","# Flip y axis in order to plot in the right way the electrodes positions\n","for i in range(len(coord)):\n","    coord[i][1] = 681 - int(coord[i][1])\n","\n","# Take absolute value of each weight for an equal comparison\n","nf = abs(best_model.get_weights()[0][0])\n","nf = np.array(nf, dtype=float)\n","\n","# Plot a topomap of the weights of the first hidden layer\n","fig = plt.figure(figsize=(5,5))\n","ax = fig.add_subplot(1,1,1)\n","ax.set_title(\"Filter #1\")\n","mne.viz.plot_topomap(nf.flatten(), coord, cmap='Spectral_r', show=False, axes=ax)\n","plt.show()"],"execution_count":0,"outputs":[{"output_type":"display_data","data":{"image/png":"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\nECcAAAAASUVORK5CYII=\n","text/plain":["<Figure size 360x360 with 1 Axes>"]},"metadata":{"tags":[]}}]},{"cell_type":"code","metadata":{"id":"EzbVkDAwUmfa","colab_type":"code","outputId":"383a3d8c-9c29-4652-8478-7bb920893bfd","executionInfo":{"status":"ok","timestamp":1576408227757,"user_tz":-60,"elapsed":2411,"user":{"displayName":"Lorenzo Gualniera","photoUrl":"https://lh3.googleusercontent.com/a-/AAuE7mCLpjQsro-Xs6X0aZX_0HuLLblFWB6HZFMeyZLy=s64","userId":"15976103540540623653"}},"colab":{"base_uri":"https://localhost:8080/","height":84}},"source":["# Accuracy over the testing set\n","predictions = best_model.predict(test_features)\n","predictions = np.round(predictions)\n","\n","score = np.array(best_model.evaluate(test_features, test_labels, verbose=0))\n","print(\"Model performance on test set:\\t[ Loss: {}\\tAccuracy: {} ]\".format(*score.round(4)))\n","print(\"\\nPredictions: {}\\nSolutions:   {}\".format(list(map(int, predictions))[:50], list(map(int, test_labels))[:50]))"],"execution_count":0,"outputs":[{"output_type":"stream","text":["Model performance on test set:\t[ Loss: 0.1799\tAccuracy: 0.7373 ]\n","\n","Predictions: [1, 1, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1]\n","Solutions:   [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1]\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"4QzR0IfXQ8-Y","colab_type":"code","outputId":"6fe73495-09e1-4fc8-d52c-d7fa4b7dad64","executionInfo":{"status":"ok","timestamp":1576408227946,"user_tz":-60,"elapsed":2568,"user":{"displayName":"Lorenzo Gualniera","photoUrl":"https://lh3.googleusercontent.com/a-/AAuE7mCLpjQsro-Xs6X0aZX_0HuLLblFWB6HZFMeyZLy=s64","userId":"15976103540540623653"}},"colab":{"base_uri":"https://localhost:8080/","height":392}},"source":["# Weighted confusion matrix (noP300: 80%, P300: 20%)\n","data = confusion_matrix(y_true=test_labels, y_pred=predictions, sample_weight=test_weights)\n","\n","# Normalized confusion matrix (values in range 0-1)\n","data_norm = data/np.full(data.shape, len(test_labels))\n","\n","# Plot the confusion matrix\n","df_cm = pd.DataFrame(data_norm, columns=np.unique(test_labels), index = np.unique(test_labels))\n","df_cm.index.name = 'Actual'\n","df_cm.columns.name = 'Predicted'\n","plt.figure(figsize = (6,5))\n","sns.set(font_scale = 1.4)\n","cm = sns.heatmap(df_cm, cmap=\"Blues\", annot=True, annot_kws = {\"size\": 16}, vmin=0, vmax=1)\n","cm.axes.set_title(\"CNN3 confusion matrix\\n\", fontsize=20)\n","plt.show()"],"execution_count":0,"outputs":[{"output_type":"display_data","data":{"image/png":"iVBORw0KGgoAAAANSUhEUgAAAYgAAAF3CAYAAAC/h9zqAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0\ndHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAAgAElEQVR4nO3dd5xU1fnH8c8uUqXs0hWkWHhAsaBi\nMGKPRjHGHmvEbhKjYuzGjr+fJUaJxpafBRtK7BprJIgtGEWNSnlUpChF6tKkCLu/P84dGGbvzs7O\nbJ39vn3Na9h7z7n33BXuM885554pKCsrQ0REJFVhXTdARETqJwUIERGJpQAhIiKxFCBERCSWAoSI\niMRSgBARkVib1HUDRLJhZscDlwBbA62Bv7j7sBo+51vA3u5eUJPnaUzMbCQwFOjt7tPrtjWSSgGi\nisysL3AOsC+wBdASWAB8AjwLPObuq5PKJx40mQmYu6+KOeZ0oCfQ1N3XVlPdm4FdgT5AR2AlMAN4\nHviruy+s8sXXE2a2O/A48A1wD/ADML5OG9VIRX//cPdeddoQqREKEFVgZlcD1xC65v4NPAwsB7oA\n+wD3A78l3JhT9QCGATdlceps6l4AfAz8E5gHbAoMAq4FzjKzQe7+bRZtqQ8OAQqAk939/Vo878lA\nq1o8X2NwOeHv9ay6boiUpwCRITO7ArgO+BY4xt0/iCnzC+DCmOqLgTLgMjO7390XVOHU2dZtW0HG\n8T/AFYR/mL+rQjvqk82j99m1eVJ3n1mb52sM3H0OMKeu2yHxFCAyYGa9CJ+8fwSGuPsXceXc/R9m\n9s+YXT8AtwK3EzKQc6tw+qzqxgWHyN8JAWKbKrQh0bV2CbAfsBmwBHBglLvfk1J2f+BiYDdC5jKD\n0P12o7svSSn7FrA30DQ6/qmEjGkeMAq4yt3XRGVPAR5Kqj7NzBJ/7u3u06NuuXHuvk/MNYwkpr/b\nzH4JnA9sC7QHFgJfAaPd/e7UtqaOQZhZIXAWcDrQj5DdTAIeBO5z99KU8mXAOOBo4H+BQ6Pzfg3c\n6u7J15hWoosH6A8Mj47ZkfD/5lp3f97MNgEuBU4hdIvOAm5397+mHKtZdB1DgO2ArsAKQib6Z3d/\nNansPsDYlGtKeNjdT0m51uOAG4CDo+Oe7u4j4/6fmNnzwGHA+e5+R0obhwNXAg+6++mZ/p4kO5rF\nlJlTCTewZyoKDgnJ4w8p7gKmAmebWZVuzjnWTXVo9P5ZphXM7BDCTWIoMBG4DXgGaEK4qSeXPZvQ\nrbUHYbzjdmAR4Qb1vpkVVXCaUYTg9w5hXGFldOz7ksp8Ssji/hv9/Jfo5+uAkkyvJ6W9ZwEvEILD\nS8CfgVcIY0unZniYR6M2dyF0M/4N6ATcHe2LUwS8B+wOPE3ortwceNDMhlbxMpoSfudDomt5FNgK\neCYK1qMJXZ9vRe1rDdxpZsemHKc94XfaJjrebcCLwADgFTM7I6nsdMLvfUn0ui7p9XzMcccTujif\nBf4KfJ/mek4jjLvdYmYDEhuja7mCEHyr8iFLsqQMIjODo/cx2R7A3X80s8uAp4CbgSNro66ZXUS4\nIbQjjI0MJgSHjMYzzKwj4ea9CbCfu49L2d896c89gTsI4zK7ufuUpH13E25StxA+pabaCtjO3RdF\n5f9ICAQnm9nl7j7X3T8FPo0yuh2BEdUw8+VsYA2wo7vPS7m2jpVVjmZTnUCYpLCXuy+Ptl9J+OR8\ngpm97O6jUqruCDwAnO3u66I6Iwj/by4lBIxMbU4I4PskPqCY2aPA24S/M1OB/u5eEu27DZgCXEYI\nHgmLgZ7u/l3KNbYjBLNbzOxxd18Z/d6vjbI63P3aNO3bnhC0TkueSFERd18U/V7HAaPNbGdCJvoY\nsBr4lbv/UNlxJHfKIDKzWfT+XdpSlXD3pwmD20eY2eDKyldT3YsIXVPDCMHhNeBAd5+fYf2hQFvg\nntTgELUr+XdyEtCMMEtqSkrRPwLLgF+bWfOY81yaCA7RcVcQZioVEj/oX53WEroPN5LheM9p0ftl\nieAQ1V1BuNEDnFGuVug6/EMiOER1JhFuxP3MrHWGbU8Ylpy9uvs7wDSgmPC7LUna9010nv5m1iRp\n++rU4BBtX0LoLisGBlaxXRAC8EWZBIekc74PXEXoCr2PEGC6Aue5+8Qs2iBZUICofYlB7Ftro667\nd436zLsSMo8tgU+iT2WZGBS9v5q2VJA45r9i2rGY8Cm7BdA3pu5HMdsSs6yKMzh3th4nzEyaZGa3\nm9nhZtapCvV3BkoJ3TepxgHrCF00qb5y96Ux27O55hJ3nxqzPTGIPyFm3yxCVtg1eaOZbWdmI83s\nGzNbaWZl0TjCn6Mi3arQroTpqdlZhm4G3iBkaAcAT7j7/VkcR7KkAJGZxCyLbP5xbMTd/03oc/5J\nTB9wTdb93t2fAw4EOgCPZFg1MWaQyTTEdtF7RbNSEtvLjUMkf8JNkvjE2SRmX7Vw99sIWdIM4Dzg\nOeB7MxtrZplkLu2ARYmB9JRjryU8I9OuXK2Kx0yyueYlFWxfG7Ujbn/iPE0TG8xsEPAh4YbshE/u\nwwnjCi9ExeKyv8rMzaIO7l5GGLNIGJHNcSR7ChCZeTd637+ajnc5oUvjxmjmSG3Vxd1nEAb5tsuk\nj50NN7JMgmPiRtS1gv2bpZSrCWVUPLYWO0Du7o+4+yBC4DyEMDawF/B6BtnEEqC9mTVN3RHNHuoI\nxGUK9dGVhMH5A939YHcf5u5XR+ML5aZ1V0FW30oWTci4lTA2Ugrcb2YtcmiHVJECRGYeItyUjzKz\nbdMVrKB/fSPu/jVhhktvqjgbI5e6SRLPEaxLWypIPKF8cAZlP4ne90ndEc1e2glYBUzO4FjZWkyY\nypl6/ibR+Svk7iXu/oq7nwmMJMy+2auS831C+HcUV24vQibwceXNrhe2JmRDb8Xs27uCOuuogQwv\n+nc0mjA4fSxwI2GwW1lELVKAyEBixgZhAPbliroezOwgMuurB7ie8On8j4RZRlWRtq6Z9YlmnqRu\nL4welOsMvB+NC1TmYcIn4N+aWbmbYPIsJsIskx+Bc81s65SiwwmD3RstRVID/gP0MLMDU7ZfSViS\nZCNmtq+Zxa2t1Dl6r2y2zIPR+41mtv4p6+jPiZliD1Ta6vphOiEb2iF5o5mdDvy8gjoLgU5m1rKa\n23IrYezmFnf/J2GixXuEqd7HVPO5pAKa5pohd//fqMvgGuBDM3ufMLCaWGpjL8KMi7jB1rjjLTKz\n/yVM+6xqWyqrO4Rww3qXMJNlYdTGvQmD1HOBMzM81wIzO4Ew9jHWzF4lTMVsC+xA+LTeOyo73cyG\nEZ7b+NjM/g7Mj867O2Fq5aXlz1KtbiXczF4ws9GEZzB+GrXxLcpnN88By81sPOEGWQDsSZitMwF4\nM93J3H2UmR0G/AqYGD3kVQYcHp1ztLs/Xh0XVgtGEH5370b/75awYWr004SH8FKNIfyuXjOztwnT\nUP/r7i9l2wgzOwL4PaFb60oAd18XTX39lNDVNCGajSU1SBlEFbj79YQnVv9KGHg8lfDE8CGEueZn\nsOGZiUzcQbgpZSNd3TcJn1o7EWYuXQwcRbhZXkd43mBSpidy95cJN4rHCZ/qLgKOIdwIb0wpezfh\nJjM+OucfCJ/G/wTsnjyVtSa4+xjCzXki4endoYTf026EgehUlxEGZncmLD2SeCjyUmBfdy83/TXG\n8YQFHBcSnqv4DaGr6/eEAd8Gwd1fIzxIOYnQrXM64Ya/L/ByBdVuAO4lPMdyOSFTPCrbNphZD8Lf\n3SXAcclTYz2sHXYa4cPJk9mMwUnVFJSVZTV+JCIieU4ZhIiIxFKAEBGRWAoQIiISSwFCRERiKUCI\niEgsBQgREYmlACEiIrEUIEREJJYChIiIxFKAEBGRWAoQIiISSwFCRERiKUCIiEgsBQgREYmlACEi\nIrEUIEREJJYChIiIxFKAEBGRWAoQIiISSwFCRERiKUCIiEisTeq6ASIiUjkz2xq4CBgE9AemuHv/\nDOueDFwB9AKmAte7++jK6imDEBFpGLYDDgG+BiZlWsnMjgYeBp4DDgbeBJ4ws4Mrq6sMQkSkYXjJ\n3V8AMLORwK4Z1hsOPOXul0c/jzWzfsB1wKvpKiqDEBFpANy9tKp1zKw30Bd4MmXXKGCgmXVKV18B\nQkQkf/WL3lO7pCZG75ausrqYRETqiJkVAUUxu0rcvaQaTlGcOF7K9sXRe/t0lfM2QPS+4OWyum6D\n1C9PnLNHXTdB6qlBWxcV5FK/5YDfZ3W/6RHGAa6J2XUdcG0ubaoOeRsgRERqTUHWvfUjgJEx26sj\ne4ANmUIRMDdpeyKzWJSusgKEiEiuCrJLQKJupOoKBnEmR+/9gClJ27dNNCFdZQ1Si4jkqqAwu1cN\nc/dphMBwbMqu44EP3X1+uvrKIEREcpVlBlEVZtYKGBL92BNoGz0EB+FmP8PMHgCGunvyvf1qYLSZ\nTQX+CRwGHEh46C4tBQgRkVzVQjYAdAaeStmW+PlUwlhGk+i1nrs/FQWXKwhLdUwFTnD3tA/JgQKE\niEjuaiGDcPfpQNoTufspwCkx2x8mLLdRJQoQIiK5qp0MotYpQIiI5KoWMoi6kJ9hT0REcqYMQkQk\nV+piEhGRWHnaxaQAISKSK2UQIiISSxmEiIjEUgYhIiKxFCBERCRWobqYREQkjjIIERGJpUFqERGJ\npQxCRERiKYMQEZFYyiBERCSWMggREYmlDEJERGIpgxARkVh5mkHk51WJiEjOlEGIiORKXUwiIhIr\nT7uYFCBERHKlACEiIrHUxSQiIrGUQYiISCxlECIiEksZhIiIxFIGISIicQoUIEREJI4ChIiIxMvP\n+KAAISKSK2UQIiISSwFCRERiKUCIiEgsBQgREYmXn/FBXxgkIiLxlEGIiORIXUwiIhJLAUJERGIp\nQIiISCwFCBERiZef8UEBQkQkV7WRQZjZNsCdwGBgJfAkcKm7/1BJvU2Bq4BjgM2AWcCjwE3uviZd\nXQUIEZEc1XSAMLMiYCwwAzga6AzcBnQCjquk+j3A4cAfgS+A3YDhQDFwQbqKChAiIjmqhQzibMIN\nfSd3XwBgZmuBx81suLtPjKtkZpsQModb3P3OaPNYM+sJnEAlAUIPyomI5Kogy1fmhgBjEsEh8gyw\nGji4kpZtAixJ2V6SSQuUQYiI5CjbDCLqOiqK2VXi7iVJP/cDHkwu4O6rzWwq0Lei47v7j2b2CHCu\nmb0HTAQGAmcSxjPSUgYhIpKjgoKCrF7AMGBazGtYyimKCZ/6Uy0G2lfSvLOBMcB4YBnwL+BRd7++\nsutSBiEikqMcxiBGACNjtscFg2zdCBxCyBq+BAYB15jZXHe/JV1FBQgRkRxlGyCibqRMgsFi4rui\nioEpFVUys/7ARcBh7v5itPltM2sKXG9m97j7sorqq4tJRCRXNT9IPZkwDrGemTUHtiJNgAC2jd4/\nTdn+CdAc6J7upAoQIiI5ymEMIlOvAPubWYekbUcQbvKvpKk3I3rfJWX7LkBZ0v5Y6mISEclRLTwH\ncR9wLvCCmQ1nw4Nyo919UqKQmT0ADHX3xL39I+A/wL1m1hn4CvgJcDnwYGVPYSuDEBGp56Kxiv2A\n5cCzwO3AaOC0lKJNolei3jrgUOB5QlB4GTgVuJUQcNJSBtEAbFbUgqsO35Y9+nSkoADe+3Ihw5+b\nyOySVWnrnf/zbRh2UJ/Yfat/XEffS15b//M7V+1L9/atypU764GP+OcX3+d2AVIjFs7/nlH/dzsT\nP/kPZWVlbLfTbpx41gV06Nw1bb1pX01m7KvP8eXET1k4fy6t2xZh2+3EUb/+DZ26br5R2QtPPZwF\n8+aUO8Z5V97CLrvvXa3X05DVxlpM7v4lcFAlZU4BTknZNo8w1bXKFCDquRZNC3n8d4NYs7aUi0b9\nF4A/HNyHUecM4uA/vcPKNesqrDt6/LeMmzJ/o22tmjVh5Nm78ebE8jf9cZPnMeL1rzba9s285dVw\nFVLdVq9axc1X/I5NmjbjzD9cQwHwzKP3cePlv+N/7nqc5i1aVlh3/Lg3mDVzGgcc+iu69dySxQvn\n88ITD3LNsKEMv/MxOnTqslH57XcexOEnnrHRts269ayJy2q4tJqr1IXjdu9Bjw6t2P/Gt5ixIHQX\nTp69lLFX7MMJu/fggXHTKqw7d8kq5i7ZOMs4YtduNG1SyDMfzipXfvGKH/l0RnVOv5aaMu7155k3\ndzY33/d3umy+BQBb9N6GS848mrGvPsdBR5xQYd1DjjmZtu2KN9q2zbY7cNFpRzDutec58tcbf9hs\n3baIrftuX/0XkUfy9fsgNAZRz/1suy58MmPx+uAA8N2ilUyYtpgD+ndJUzPekQO7M3/pKt5OySyk\nYfnkg3fYyvqvDw4Anbpuzjbb7sDH499OWzc1OAB07LwZbdoVsXih/l5koxZmMdWJOs0gzKwfYaGp\nvmx4XHwRYV7vK+6ebn5vo9Cna+vYMYAv5y5nyE7p+5pTbVbUgt237sBD46axrrSs3P79tuvMpJsP\norAQJn23lHvGTNX4Qz01a8Y3DBi0V7nt3XpsyYfvjqny8WbPnMbSksVstkWvcvs+/c87nHnkXpSu\nK6XnVn045JihGn9I0RBu9tmokwBhZi2BB4BjgTXAVMKTghCCxa+BP5nZk8Dp7p5+NDaPtWvVjCUr\nfyy3fckPa2jXsmmVjnX4Lt1oUljAMx9+V27fmInz+GxmCd8u+oGObZpz8uBe/O30XbngsU95fkL5\n7iipW8uXL2XT1m3Lbd+0TVtWLK/wwdhY69atZeRdN9OmXTF7H/jLjfbttNtgevfZlk5dNmNpySLe\n/MfT3HHDJZx14bXssV+6RUQbFwWI6nUzcABwEvBM6rcamVkz4Ejgjqjs+bXewjx05MDufPHdEqbM\nKX8DufbZjZeTf/2zuTw7bA8uPsQUIPLco/fcyteTP+OCa29j0zYbB51f//aijX7eZfd9uP7C03n6\n4bsVIJLlZ3yoszGI44AL3P2JuK+8c/c17v4kcCFwfK23rh5ZuvLH2EyhosyiIjv2aMfWXVrHZg9x\nSsvg1f/OYfPilnRq2zzj80jt2LR1G1YsX1pu+4plS9m0dZuMj/P3h+7irdee5/RhV7L9zoMqLV/Y\npAkDB+/PogXzKFm0oNLyjYXGIKpXSyCTzu3vo7KN1pdzl7FN1/L/4Lfp2pqv52Y+BfWogd1Zs7aU\nFyfMrnIbysoPV0gd69ZjS2bN/Kbc9tnfTmPzHr0zOsaLTz7Ey08/wkm/uYg99huSRSvq/w2utjSE\nm3026iqDeA+42szKT6eIRPuuAt6ptVbVQ29+8T0DehaxRYcNcbJbcUt26V0c+yxDnKZNCvjFgM0Z\nN3kei1ak/Y7y9ZoUFnDITpsza9EPLFi2Oqu2S80Z8JM9mTplIvPmbOj+m//9bL6a9F8G/GTPSuu/\n8eJonnn0Xo4++bcccOgxGZ933bq1fPD2P+nQqStF7TtUXqGRKCjI7lXf1VUG8XvgLWCmmY0BJrFh\nydsiwqqF+0fb9quLBtYXT47/NgwYn7Yrt736JWVlZfzhYGNOySpGvT9zfbluxS1564/7cMcbX3Hn\nG19vdIz9tu1C8abNYp99ADh0wOYc0L8Lb02ex+ySVXRs04yTB/di+y3ace4jH9fo9Ul29jnocN78\nx9P8ZfjFHPXrs6GggGcfu4/2Hbuw78FHrC+3YN4cLj79KA47/jQOPyE87DZ+3BuM+tvtbL/L7vTb\ncRe+nvL5+vItW21Ktx5bAvDvt17nkw/eZodd96BDx84sKVnEmJefZsZU57eXDK/dC67n8jWDqJMA\n4e5fm9l2wG8I01xPJ6xrDmE202TgBuA+d0/9LtVGZeWadZx493iuPHxb/nzijhRQwPtfLeD65ybx\nQ8pT1Js0KaQw5i/qUQO7sXjFGv41KT7j+HbRD3Ro04zLf9mPdq2asnLNOj77dglD7/2At139zPVR\n8xYtuex/72LU/93OfX++FoBtd9yVE866gBYtNyyZUlZWRmnpOsqS+gk/nzCesrIyPp/wbz6f8O+N\njtt3+525/KZ7gPBcxdKSxYx+8A5WLFtK8xYt6bV1Py66/i9sv0vl4xWNSZ7GBwrK8rSDufcFL+fn\nhUnWnjhnj7pugtRTg7YuyukWb5e+ntX9xm/+eb0OLVpqQ0QkR/maQShAiIjkqLAwPyOEAoSISI7y\nNYPQYn0iIhJLGYSISI40zVVERGLlaXxQgBARyZUyCBERiaUAISIisfI0PihAiIjkShmEiIjEytP4\noAAhIpIrZRAiIhIrT+ODAoSISK6UQYiISKw8jQ8KECIiuVIGISIisfI0PihAiIjkShmEiIjEytP4\noAAhIpIrZRAiIhIrT+ODvlFORETiKYMQEcmRuphERCSWAoSIiMTK0/igACEikitlECIiEitP44MC\nhIhIrpRBiIhIrDyNDwoQIiK5KqyFCGFm2wB3AoOBlcCTwKXu/kMGddsB1wFHA52AOcAj7n51unoK\nECIiOarp+GBmRcBYYAbhJt8ZuI1wsz+ukrqbAuOAMuASYDawJbBFZedVgBARyVEtjEGcDRQDO7n7\nAgAzWws8bmbD3X1imrqXAUVAf3dfHm17K5OTaqkNEZEcFRZk96qCIcCYRHCIPAOsBg6upO4ZwP1J\nwSFjyiBERHKUbQYRdR0VxewqcfeSpJ/7AQ8mF3D31WY2Feib5vi9gK7AAjN7ETgQWAW8CJzv7ovT\ntU8ZhIhIjgoKsnsBw4BpMa9hKacoBkoobzHQPk3TukbvfwKWAb8ALiRkHU9Udl3KIEREclRA1mMQ\nI4CRMdvjgkE2EknA18BJ7l4GYGZLgKfMbKC7f1hRZQUIEZEcVXE8Yb2oGymTYLCY+K6oYmBKJfUg\njF+UJW0fE733ByoMEOpiEhHJUUFBQVavKphMGIdYz8yaA1uRPkBMJQxkV6RFupNWmEGYWY90FSvi\n7jOzqSciIhV6BbjKzDq4+8Jo2xFA82hfLHdfY2ZvAD8zs4KkLOKA6H1CupOm62KaTniwoqqaZFFH\nRKTBqoUHqe8DzgVeMLPhbHhQbrS7T0oUMrMHgKHunnxvvw54H3jCzB4CegI3Aq+7+3/SnTRdgDiN\n7AKEiEijUtNLbbh7iZntB9wBPMuGpTYuSSnahJQP6e4+wcwOAm4CXgCWRnUvrey8FQYIdx9ZhfaL\niDRatbFYn7t/CRxUSZlTgFNito8FflLVc2oWk4hIjrTcd8TMfgrsArSj/CyoMncfXh0NExFpKPI0\nPmQeIMysGPgHMAgoIIxPJH4tZUnbFCBEpFGpjeW+60JVnoO4GRgAnERYKrYA+DnQB7gf+IQNj3WL\niDQaBVm+6ruqBIhfAP/n7k8Q1vQAKHX3r939bGAWYdqViEijUgsPytWJqgSI9sBn0Z/XRO+bJu1/\nlcqXnRURyTu1sNx3nahKgJhLeDgDd19GyCKSl5ltjx6SE5FGKF8ziKrMYhoP7El4Ag9CxnCRmc0m\nBJoLgH9Xb/NEROq/BnCvz0pVMoi/Al+ZWWJxp4uAhcAjhOVqFwLnV2vrREQagEafQbj7u8C7ST9/\nZ2bbAdsD64Ap7r62+psoIlK/NYTxhGzk9CS1u5cC/62mtoiINEgNIRvIRlUelNsrk3Lu/nb2zRER\naXjyMzxULYN4i8xWd9VMJhFpVPL1SeqqBIh9Y7Y1AXoBZxEGvC+rhjaJiEg9UJVB6nEV7TOzkcA7\nwD7Av3JulYhIA5KnCUT1fCd1NFj9JHBGdRxPRKQhafTTXDPQHiiqxuOJiDQIDeBen5WqzGLqUcGu\nImAv4GJCN5OISKOiQWqYTsWzmAoIS3GcnWuDREQamjyND1UKEKdRPkCUAYuBqe4+qdpaVQ1uOnmn\num6C1DMXPvd5XTdB6qn3Lt4zp/oNYTwhG1WZxTSyBtshItJgVctsn3oo4+sys2/M7Jdp9v/CzL6p\nnmaJiDQcmsUUHohrnWZ/a6BnTq0REWmAtFhfkG6pjT7A0hzaIiLSIDXKAGFmQ4GhSZuuNLMzY4oW\nE5b9fqka2yYi0iA0hO6ibFSWQbQCOiX93AYoTSlTBqwA7gGur76miYg0DI0yg3D3ewg3fsxsGnC+\nu79YGw0TEWko8jSBqNI019412RARkYYqX5+krso010PN7K9p9t9pZr+onmaJiDQchVm+6ruqtPES\nwphERVpGZUREGpWCguxe9V1VAkR/YEKa/R8D2+XWHBERqS+q8hxEU0KWUJFWQIvcmiMi0vA0+jEI\n4HPgCDMr95sws0LgSGBidTVMRKShyNcupqpkEH8BRgHPmNlwILF663bA1cBP2PihOhGRRqFRPgeR\nzN2fNLOtgWuBw1J2lwHXuftj1dg2EZEGIV+7mKq0FpO732BmowjdSVtGm6cCz7n7N2a2tbt/Xd2N\nFBGpz/I0PlT9O6nd/Rvg1sTPZtYROM7MTgIGAk2qr3kiIvVfo+9iSmZmLYHDgZOAnxFmOH0F/Ln6\nmiYi0jAUkJ8RIuMAEc1eOoAQFA4nfP9DGfAA8Gd39xppoYhIPddoMwgz24UQFI4FuhIyhduADwnL\ne7+m4CAijVmjDBBmNpnwRUCzgMeBJ9z942jfVjXfPBGR+q+xfh+EAdOAy4AX3X11zTdJRKRhqY0M\nwsy2Ae4EBgMrgSeBS939hyoc4wjgWWCiu/evrHxlAeIM4ETgCWCFmb0Q/fmNTBskIpLvajqBMLMi\nYCwwAzga6Ezo6u8EHJfhMVoBI4DvMz1vZV8Y9CDwoJl1IwSKEwnjEQuBcYRB6nTfUy0ikvdq4UG5\nswlf7byTuy8AMLO1wONmNtzdM1nm6CrgG0KQ2TWTk2a0FpO7z3L3W9x9R2An4CFgN6AAuNfMHjSz\nw81s00yOJyKSTwoLsntVwRBgTCI4RJ4BVgMHV1bZzPoC5wHnVuWkVf7OCnf/zN0vAXoC+wMvE56s\nfhaYX9XjiYg0dLWwWF8/Nqx/B0A0JjwV6JtB/buA+939i6qcNKsH5QDcvYzQJzbWzH5LWJ/pxGyP\nJyLSUBVm+aBcNLZQFLOrxN1Lkn4uBkpiyi0G2ldyjuOA7YGjqtq+rANEsiiS/T16iYhIZoYB18Rs\nv46wMGpOzKwNYYWLK1ICTo1+qRwAABRQSURBVEaqJUCIiDRmOYxRjwBGxmxPvZkvJj7TKAampDn+\nH4FFwLNRtgLQDCiMfl6Z7vEFBQgRkRxl+xxE9Kk+k0/2kwnjEOuZWXNgK8KkoYr0JXxd9MKYfYuB\nCwhBKlaVB6lFRGRjhQUFWb2q4BVgfzPrkLTtCKB5tK8iVwL7prxeB6ZHf3463UmVQYiI5KgWVtq4\njzBF9YXoGz0TD8qNdvf1s5vM7AFgqLtvAhA3a8nMTgG6u/tblZ1UGYSISI5qOoOIuqL2A5YTHim4\nHRgNnJZStAnV+J08yiBERHJUG2v1ufuXwEGVlDkFOCWDMhlRgBARyVG+dsUoQIiI5KixLvctIiKV\nyM/woAAhIpKzWljNtU4oQIiI5Cg/w4MChIhIzvI0gVCAEBHJlQapRUQklqa5iohILGUQIiISKz/D\ngwKEiEjO8jWDyNeuMxERyZEyCBGRHOXrJ20FCBGRHOVrF5MChIhIjvIzPChAiIjkLE8TCAUIEZFc\nFeZpDqEAISKSI2UQIiISq0AZhIiIxFEGISIisTQGISIisZRBiIhILAUIERGJpUFqERGJVZif8UEB\nQkQkV8ogREQklsYgpM4sWTCPVx+5m6mfTwDK2LL/zhw89ByKOnZJW69k/lxeGflX5sz4mhVLSmjW\nogWduvdiz18eR58Bgyqs9/YLo3jzifvpYf0547o7qvlqpLp0btOM8/bdioG9iigAPppRwl/+9Q3f\nL1udUf2e7VtyxuCe7LxFES2bFvL9stU8+8kcnvp49kblOrZuxpmDe7L7lu1p03wTFixfw5gp87n3\nnenVf1ENlDIIqRNrVq/ioRsuZJNNmnLk7y6FggLGjH6Qh67/A+fccj/NWrSsuO6qlbRq0479f3Ua\nbTt0YvXKH5gw5mUeu/kKjvvDtWy7217l6iz6fjZvP/sYm7YrrsnLkhw136SQO47dgR/XlnLDK19S\nRhlnDe7Fncdtz8kjP2bVj6Vp6/ft0po7jt2eT75dwk2vf8WK1WvpXtySls2abFSua9vm3HvCjsxe\nsooRY6ayaMWPbNauOd2LKv57J/lDAaKemzDmZRZ/P4fzbn+YDl27AdC1x5b8Zdiv+XDMP9jjkGMq\nrNt5i94c/puLN9rWZ8Agbj/3BD5+67XYAPHSAyPYYfDPWDD7W0pL11XvxUi1+eUOXdm8XQuOf+Aj\nZpWsAmDq/BU8ecZADttxM0Z/NKvCugXAlUOMj2aWcMXzk9dv//jbJeXKXnzg1sxfvoZzR3/OutIy\nAD79rnqvJR/k6yB1vn4RUt6YMuF9um/Tb31wACjuvBlbWH+mfPRelY/XpEkTWrTalCZNmpTb99m7\nY5gz7St+dvwZObVZat7grTswcc7S9cEBYM6S1Xw+ayl7bt0hbd0BPdrRu2MrRn9YcRAB6FbUgkG9\n2/P0x7PXBweJV5Dlf/Vdvc8gzKwHsI+7P1LXbakL87+bTt9d9yi3vXP3XkwcPy6jY5SWllJWVsYP\ny5bw0Zh/sHDOdxw89PcblVm5fBmvPno3B554Fq1at62WtkvN6d2xFe98vbDc9mkLVrCvdUpbd8du\n7QBotkkhfztxR6xLa5atWsubU+Zz99vTWbM2dE9t3y38PVi9tpQRx/Rnx+7tWLV2He9NXcQd//qG\npavWVvNVNVwapK47A4GHgEYZIFYuX0aLTVuX296ydRtWrViW0THeePw+3n/5KQCatWjJMedfyVbb\n77xRmdcfv48OXbszYO+Dcm+01Li2LTZhWcwNeumqtbRpkf6fdcfWzQC4/tC+PPPJHO55ezp9u7bm\njD160rlt8/XdTh03DeWuOGgbXps0j0c++JbuRS35zV696N2hFWc8+inKK4I8jQ8NIkBIjnYfcjTb\n/3Q/lpcs4tN33uDpO/+HY4c1xXbZHYDpkz/jv2+/wW9uui9vv1tXNkj8L3590jzuf28GAJ98u4TC\nggJ+t3dverZvyYxFKymMCn7y7RJue3MqAB/PXMKK1Wu5/pf9+EnvYsZPW1wn11DfFObpv5s6CxBm\n9lmGRRt1f0eL1m1YtWJ5ue0hs2iT0THadehEuw6h28F22Z0Hr7uA1x+/d32AeOn+29l534Np274T\nK6NzlZauo7S0lJUrltO0WTM2adqsmq5IqsOyCjKFijKLZEtXhv0fzijZaPt/pi/md3v3pk+X1sxY\ntJIlq34M5aanlgs/9+ncWgEikp/hoW4ziH7AROCTSsr1BLao+ebUT52792Ted9PLbZ//3Qw6de+Z\n1TE337IP4199ZsOxZs1g/qwZfPjmS+XK3nj6Lzno5N/x0yFHZ3UuqRnTFvxA7w6tym3v1aEV0xf+\nkLbuNwtXpN2fGI+etiD9cUrL1MG0Xp5GiLoMEF8AX7n7qekKmdlRwN6106T6x3b5KW88di+Lvp9N\n+y6bA7B43lxmfvkFBxx/ZpWPV1paykz/guLoWACnXnVbuXKvPnIXpaWlHHLKubRPmkEl9cO7Uxdy\nzj5bsnm7FsxeEmYydW3bnB26teWet6enrTv+m8WsXlvKT3oV897UReu3D+odnn2ZMjeMbU2cvZQF\ny9ewW+8inv5kw8NzP4nKTZ5bPrNtrBrCjKRs1GWA+AA4OMOy+fnbz8Cu+x3Cf15/nlG3XsX+x55G\nATDm7w/RrkNndv3ZoevLlcyfy4jzT2Lvo05m36NOBuBfT41k5Ypl9OjTn9ZF7VlesoiPx77CrKlT\nOPrcP66v23u7ncqdt0Wr1pSWrovdJ3Xvxc/mctSAzbnpiG3527vToQzOGNyT75et5oX/zllfrkvb\n5vz9zIGMfH8mD/17JhAGsh/94FtO2b0HK9asZcLMJfTt0ppTd+/BK198v37q7LoyuPftaVw5xLj4\ngK0Z99UCuhW15Kw9e/LxzBImzCyJa1qjlKdDEHUaIP4EvJJBuVeA3jXclnqrWYuWnHLVn3ntkbt5\n9q4bKSuLlto4+RyaJz1FXVYWTWct3fAE7ea9t+Hfrz7DF++PZdUPK2hdVEzXnltx2rV/oaf1r4vL\nkWqy6sdSzhv9OefttyVXDzEKCjYstbEy6SnqAmCTwoJyN7CH3p/JD2vWceROm3H8wO4sXL6GUR/O\nWh9EEl6dOI/SMjhpt+4M6d+FpavW8sak+dz79rRauMqGI0/jAwVledqPOPqTWfl5YZK1O978pq6b\nIPXUexfvmdM9/sNpS7K63wzs3a5exxZNcxURyZHGIEREJJbGIEREJFZtxAcz2wa4ExgMrASeBC51\n9wrnI5tZW+APhAlBBvwITACucPePKzunFusTEclVQZavDJlZETAWaAMcDVwIHA88WEnVHsDZwJvA\nscCpQBPgfTPbOV1FUAYhIpKzWhiDOBsoBnZy9wUAZrYWeNzMhrv7xArqTQO2Ss4yzOxN4BvgXELA\nqJAyCBGR+m8IMCYRHCLPAKtJ8zyZu69I7YJy91XAZGDz+FobKIMQEclRtoPUUddRUcyuEndPfhKx\nHyndSe6+2symAn2reM5NgQFksEK2MggRkRzlMAQxjNANlPoalnKKYiDu0fXFQPsqNvcGoBXw18oK\nKoMQEclV9kMQI4CRMdtrZB0TMzuBEHzOcfevKyuvACEikqNsB6mjbqRMgsFi4ruiioEpmZzLzA4g\nfPnan9z97kzqqItJRCRHBQXZvapgMmEcYj0zaw5sRQYBwsx2A54F/g5cmulJFSBERHJUw49BQFi0\ndH8z65C07QigOZUsempm/aIy7wGnuXvG60api0lEJFc1/yj1fYTnFl4ws+FAZ+A2YLS7T0oUMrMH\ngKHuvkn0c2fgdWANYQXtXcwsUXy1u6f9wjYFCBGRHNX0g3LuXmJm+wF3ELqKEkttXJJStEn0StiW\nDd/I+WZK2RlAr3TnVYAQEclRbSzW5+5fAgdVUuYU4JSkn98ih/xGAUJEJEd5upirAoSISM7yNEIo\nQIiI5EhfGCQiIrH0hUEiIhIrT+ODAoSISM7yNEIoQIiI5ChfxyC01IaIiMRSBiEikiMNUouISKw8\njQ8KECIiOcvTCKEAISKSo3wdpFaAEBHJkcYgREQkVp7GBwUIEZGc5WmEUIAQEcmRxiBERCSWxiBE\nRCRWnsYHBQgRkVwpgxARkQrkZ4RQgBARyZEyCBERiZWn8UEBQkQkV8ogREQkVr4+B6EvDBIRkVjK\nIEREcpWfCYQChIhIrvI0PihAiIjkSoPUIiISK18HqRUgRERylZ/xQQFCRCRXeRofFCBERHKlMQgR\nEYmlMQgREYmVrxmEnqQWEZFYyiBERHKUrxmEAoSISI40BiEiIrGUQYiISKw8jQ8KECIiOcvTCKEA\nISKSI41BiIhIrNoYgzCzbYA7gcHASuBJ4FJ3/yGDuicDVwC9gKnA9e4+urJ6eg5CRKSeM7MiYCzQ\nBjgauBA4Hngwg7pHAw8DzwEHA28CT5jZwZXVVQYhIpKjWkggzgaKgZ3cfQGAma0FHjez4e4+MU3d\n4cBT7n559PNYM+sHXAe8mu6kyiBERHJVkOUrc0OAMYngEHkGWE3ICmKZWW+gL6E7KtkoYKCZdUp3\nUmUQIiI5ynaQOuo6KorZVeLuJUk/9yOlO8ndV5vZVEIAqEi/6H1SyvZExmHA/Ioq522AOHZAt/yc\nViBZO3ZAt7puguSplk2z7mW6FrgmZvt10b6EYqAkptxioH2a4xdH76l1F0fv6ermb4AQEWkARgAj\nY7bHBYNapwAhIlJHom6kTILBYuK7ooqBKZXUI6o7N6UewKJ0J9UgtYhI/TeZDeMJAJhZc2Ar0geI\nydF7v5Tt20bvnu6kChAiIvXfK8D+ZtYhadsRQPNoXyx3n0YIIMem7Doe+NDdKxygBnUxiYg0BPcB\n5wIvmNlwoDNwGzDa3dfPUDKzB4Ch7p58b78aGB3NePoncBhwIHBIZSdVBiEiUs9FYxX7AcuBZ4Hb\ngdHAaSlFm0Sv5LpPAacSnsB+Hfg5cIK7p31IDqCgrKws58aLiEj+UQYhIiKxFCBERCSWBqnzVC5L\nA0t+MrOtgYuAQUB/YIq796/bVkl9pgCRh5KWBp5BGJhKzHjoBBxXh02TurUdYebKB4TeA/UgSFr6\nC5KfEksDH+bur7n7I8B5wLFmtl3dNk3q0EvuvoW7Hw18XNeNkfpPASI/ZbU0sOQ3dy+t6zZIw6IA\nkZ/6kbK8r7uvJnzVYLqlgUVE1lOAyE/ZLg0sIrKeAoSIiMRSgMhP6ZYGTru8r4hIggJEfsp2aWAR\nkfUUIPJTVksDi4gk02J9eSh6UO4LYDqQvDTwGHfXg3KNlJm1IkyBBjiHkFH+Ifr5Q3efUScNk3pL\nT1LnIXcvMbP9gDsISwMnltq4pE4bJnWtM/BUyrbEz6cS/93I0ogpgxARkVgagxARkVgKECIiEksB\nQkREYilAiIhILAUIERGJpQAhIiKxFCAkL5lZLzMrM7NTkrZda2b1al63mU03s5F13Q6ROHpQTmpE\ndGN+KGnTOmAu8E/gSnefVRftyoaZnQB0dvcRdd0WkdqkDEJq2rXAr4HfEILDycA70bIPte0GoGUW\n9U4AhlVzW0TqPWUQUtNed/fx0Z/vN7NFhPV/DgOeSC1sZpu6+4qaaIi7rwXW1sSxRfKRAoTUtn8R\nAkTvpG6o/YHDgWMJ6wUVAJhZO+Aa4GigK/BdVP5/3X1d4oDR4oQjCCvWlgEvALenntjMrgWucfeC\nlO0HAJcDu0bn/hK4x93vN7O3gL2jcuvHLxLHMLMC4PfAWcA2wFLgJeDS5O8Ej8r9kZBJtQc+iOqJ\n1FsKEFLbtoreFyZtu5PwJUf/A7QDMLOWwFigF3AvYWXa3QhdVj2BM6JyBYSAMBi4j/Bd3IcBD2fS\nGDP7dVR2MnBL1K4dgEOA+5Pa1B24IOYQ9wCnR8f4K7AFcC6wm5kNdPdVUbnrgSsJy62/AuwEvE5Y\ngl2kXlKAkJrWzsw6Ai2APYCrCavL/gM4ICqzHNgn6gJKuADoC+zs7okvOfqbmU0DbjCzP7m7A78E\n9iJ8Yr8FwMzuAd6srGFm1pZwU/8Y2NPdVybtKwBw93+a2Syg2N0fS6n/U+BsYKi7P5K0/TXgHcJ4\ny9/MrBNhJd2XgUPdvSwqdz1wVWXtFKkrGqSWmvYaMB/4lrDk+PeEm2TyLKb/SwkOAL8C3gUWmFnH\nxIsNN/59ovchQCnhkzwAUffTXRm07UCgLXBTcnCIjpHJdNhfEYLbayltnBJd575RuZ8BzYC7U457\nRwbnEKkzyiCkpp1H6L5ZBcwEvo25+U6NqdcH2JEQXOJ0jt57AnPdfVnK/i8zaFuiu+uLDMrG6QO0\nJgSDOMltBPgqeae7LzCzxVmeW6TGKUBITfswaRZTRVbGbCskDGjfWEGdb3JqVfUoJIxZVPQtfbr5\nS4OmACH11VSgjbtXNpYwAzjAzNqkZBF9MjwHQH9Ct1BFKupumkoYRxnv7ssraSOEWU7rs4ioO6o4\ng3aK1AmNQUh9NRoYaGZDUneYWRszS8z+eYXw9/i3SfsLCd+5XJk3CNNSL4tmTSWfI3kq7AqgKGVb\noo2FhIH31DY2MbPEzf9N4EfgdynHOC+DNorUGWUQUl/9CTgUeMHMHgYmEJ6C7g8cA2xPmPr6EvAe\ncKOZ9QImEp6paF/ZCdx9qZmdDzwIfGRmowhdRtsB3YAjo6IfEZ7RGGFmHwCl7v6ku79tZncBF5vZ\nDoRpq6uBrQnPblwNjHT3+WZ2K+FZi3+Y2SuE8ZUhwPpnJUTqG2UQUi9Fs4r2AW4mTGMdAVwB9AOG\nE9Z1wt1LCVNdHwdOJDy3MAcYmuF5RgK/ABZFx78F2J0QeBLuBh4BTgIeI+kJcHf/PeE5iPbRuW8i\nzI76O2EMJeFKwkN/AwjBbxvg54TsRKReKigrq1eLW4qISD2hDEJERGIpQIiISCwFCBERiaUAISIi\nsRQgREQklgKEiIjEUoAQEZFYChAiIhJLAUJERGIpQIiISKz/B/aq51VJdfo8AAAAAElFTkSuQmCC\n","text/plain":["<Figure size 432x360 with 2 Axes>"]},"metadata":{"tags":[]}}]},{"cell_type":"code","metadata":{"id":"OXpd-i9vq16m","colab_type":"code","colab":{}},"source":["# Model metrics (sens, spec, ppv, npv)\n","def model_metrics(conf_matrix):\n","    tn, fp, fn, tp = list(data_norm.flatten())\n","    sens = round(tp/(tp+fn),4) # Sensitivity\n","    spec = round(tn/(tn+fp),4) # Specificity\n","    ppv = round(tp/(tp+fp),4) # Positive Predicted Value\n","    npv = round(tn/(tn+fn),4) # Negative Predicted Value\n","    return {\"Sensitivity\":sens, \"Specificity\":spec, \"PPV\":ppv, \"NPV\":npv}"],"execution_count":0,"outputs":[]},{"cell_type":"code","metadata":{"id":"AD4gSTHCq2H7","colab_type":"code","outputId":"904374a4-fb78-45ee-da5c-8dfbdd93c71b","executionInfo":{"status":"ok","timestamp":1576408228150,"user_tz":-60,"elapsed":2733,"user":{"displayName":"Lorenzo Gualniera","photoUrl":"https://lh3.googleusercontent.com/a-/AAuE7mCLpjQsro-Xs6X0aZX_0HuLLblFWB6HZFMeyZLy=s64","userId":"15976103540540623653"}},"colab":{"base_uri":"https://localhost:8080/","height":85}},"source":["# Put model metrics into a table\n","metrics = model_metrics(data_norm)\n","\n","# Create figure\n","fig = plt.figure(figsize=(5,1))\n","ax = fig.add_subplot(111)\n","\n","# Hide graph outlines\n","for item in [fig, ax]:\n","    item.patch.set_visible(False)\n","ax.xaxis.set_visible(False)\n","ax.yaxis.set_visible(False)\n","ax.spines[\"top\"].set_visible(False)\n","ax.spines[\"bottom\"].set_visible(False)\n","ax.spines[\"left\"].set_visible(False)\n","ax.spines[\"right\"].set_visible(False)\n","\n","# Table definition\n","table = ax.table(cellText=[list(metrics.values())], \n","                     colLabels=list(metrics.keys()),\n","                     loc=\"center\",\n","                     cellLoc=\"center\",\n","                     colColours=[\"c\"]*4)\n","table.set_fontsize(16)\n","table.scale(2,2)\n","\n","plt.show()"],"execution_count":0,"outputs":[{"output_type":"display_data","data":{"image/png":"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\nD5MAAAAASUVORK5CYII=\n","text/plain":["<Figure size 360x72 with 1 Axes>"]},"metadata":{"tags":[]}}]}]}